# vim: ft=make ts=4 sw=4

# Ready to use config for full build of the lastest Qubes OS 3.2.

GIT_BASEURL ?= https://github.com
GIT_PREFIX ?= QubesOS/qubes-
NO_SIGN ?= 1
BRANCH ?= release3.2

BACKEND_VMM=xen

DIST_DOM0 ?= fc23
DISTS_VM ?= fc28 stretch

MGMT_COMPONENTS = \
	mgmt-salt \
	mgmt-salt-base \
	mgmt-salt-base-topd \
	mgmt-salt-base-config \
	mgmt-salt-base-overrides \
	mgmt-salt-dom0-qvm \
	mgmt-salt-dom0-virtual-machines \
	mgmt-salt-dom0-update

COMPONENTS ?= \
    gcc \
    vmm-xen \
    core-libvirt \
    core-vchan-xen \
    core-qubesdb \
    linux-utils \
    python-xcffib \
    python-hid \
    python-u2flib-host \
    python-objgraph \
    core-admin \
    core-admin-linux \
    core-agent-linux \
    linux-firmware \
    intel-microcode \
    linux-kernel \
    artwork \
    gui-common \
    gui-daemon \
    gui-agent-linux \
    gui-agent-xen-hvm-stubdom \
    app-linux-split-gpg \
    app-linux-tor \
    app-thunderbird \
    app-linux-pdf-converter \
    app-linux-img-converter \
    app-linux-input-proxy \
    app-linux-usb-proxy \
    app-yubikey \
    app-u2f \
    $(MGMT_COMPONENTS) \
    infrastructure \
    meta-packages \
    linux-template-builder \
    desktop-linux-kde \
    desktop-linux-xfce4 \
    desktop-linux-i3 \
    desktop-linux-awesome \
    manager \
    linux-pvgrub2 \
    linux-gbulb \
    installer-qubes-os \
    linux-yum \
    linux-deb \
    vmm-xen-windows-pvdrivers \
    antievilmaid \
    xscreensaver \
    builder \
    builder-debian \
    builder-rpm

BUILDER_PLUGINS = builder-rpm builder-debian
BUILDER_PLUGINS += mgmt-salt

WINDOWS_COMPONENTS = \
                     windows-utils \
                     core-agent-windows \
                     gui-agent-windows \
                     installer-qubes-os-windows-tools \
                     builder-windows

# Uncomment this to enable windows tools build
#DISTS_VM += win7x64
#COMPONENTS += $(WINDOWS_COMPONENTS)
#BUILDER_PLUGINS += builder-windows

BRANCH_linux_template_builder = master
BRANCH_linux_yum = master
BRANCH_linux_deb = master
BRANCH_app_linux_split_gpg = master
BRANCH_app_linux_tor = master
BRANCH_app_thunderbird = master
BRANCH_app_linux_pdf_converter = master
BRANCH_app_linux_img_converter = master
BRANCH_app_linux_input_proxy = master
BRANCH_app_linux_usb_proxy = master
BRANCH_app_yubikey = master
BRANCH_app_u2f = master
BRANCH_builder = master
BRANCH_builder_rpm = master
BRANCH_builder_centos = master
BRANCH_builder_debian = master
BRANCH_builder_archlinux = master
BRANCH_builder_github = master
BRANCH_builder_windows = master
BRANCH_template_whonix = master
BRANCH_infrastructure = master
BRANCH_linux_pvgrub2 = master
BRANCH_linux_gbulb = master
BRANCH_vmm_xen = xen-4.6
BRANCH_linux_kernel = stable-4.9
BRANCH_python_xcffib = master
BRANCH_python_hid = master
BRANCH_python_u2flib_host = master
BRANCH_python_objgraph = master
BRANCH_intel_microcode = master

TEMPLATE_LABEL ?=
TEMPLATE_LABEL += fc20:fedora-20
TEMPLATE_LABEL += fc21:fedora-21
TEMPLATE_LABEL += fc22:fedora-22
TEMPLATE_LABEL += fc23:fedora-23
TEMPLATE_LABEL += fc24:fedora-24
TEMPLATE_LABEL += fc25:fedora-25
TEMPLATE_LABEL += fc26:fedora-26
TEMPLATE_LABEL += fc27:fedora-27
TEMPLATE_LABEL += fc28:fedora-28

TEMPLATE_ALIAS ?=
TEMPLATE_ALIAS += jessie:jessie+standard
TEMPLATE_ALIAS += jessie+gnome:jessie+gnome+standard
TEMPLATE_ALIAS += jessie+minimal:jessie+minimal+no-recommends
TEMPLATE_ALIAS += stretch:stretch+standard
TEMPLATE_ALIAS += stretch+gnome:stretch+gnome+standard
TEMPLATE_ALIAS += stretch+minimal:stretch+minimal+no-recommends

TEMPLATE_ALIAS += whonix-gateway:jessie+whonix-gateway+minimal+no-recommends
TEMPLATE_ALIAS += whonix-workstation:jessie+whonix-workstation+minimal+no-recommends
TEMPLATE_ALIAS += whonix-gateway-14:stretch+whonix-gateway+minimal+no-recommends
TEMPLATE_ALIAS += whonix-workstation-14:stretch+whonix-workstation+minimal+no-recommends

TEMPLATE_LABEL += fc20+minimal:fedora-20-minimal
TEMPLATE_LABEL += fc21+minimal:fedora-21-minimal
TEMPLATE_LABEL += fc23+minimal:fedora-23-minimal
TEMPLATE_LABEL += fc24+minimal:fedora-24-minimal
TEMPLATE_LABEL += fc25+minimal:fedora-25-minimal
TEMPLATE_LABEL += fc26+minimal:fedora-26-minimal
TEMPLATE_LABEL += fc25+xfce:fedora-25-xfce
TEMPLATE_LABEL += fc26+xfce:fedora-26-xfce
TEMPLATE_LABEL += wheezy:debian-7
TEMPLATE_LABEL += wheezy+standard:debian-7
TEMPLATE_LABEL += jessie:debian-8
TEMPLATE_LABEL += jessie+standard:debian-8
TEMPLATE_LABEL += stretch:debian-9
TEMPLATE_LABEL += stretch+standard:debian-9
TEMPLATE_LABEL += centos7:centos-7
TEMPLATE_LABEL += centos7+minimal:centos-7-minimal
TEMPLATE_LABEL += centos7+xfce:centos-7-xfce

TEMPLATE_LABEL += jessie+whonix-gateway+minimal+no-recommends:whonix-gw
TEMPLATE_LABEL += jessie+whonix-workstation+minimal+no-recommends:whonix-ws
TEMPLATE_LABEL += stretch+whonix-gateway+minimal+no-recommends:whonix-gw-14
TEMPLATE_LABEL += stretch+whonix-workstation+minimal+no-recommends:whonix-ws-14

# Uncomment this lines to enable CentOS template build
#DISTS_VM += centos7

# Uncomment this lines to enable Whonix template build
#DISTS_VM += whonix-gateway whonix-workstation
#COMPONENTS += template-whonix
#BUILDER_PLUGINS += template-whonix

# Uncomment this lines to enable Debian 8 template build
#DISTS_VM += jessie
#COMPONENTS += builder-debian
#BUILDER_PLUGINS += builder-debian

# Uncomment this line to enable Archlinux template build
#DISTS_VM += archlinux
#COMPONENTS += builder-archlinux
#BUILDER_PLUGINS += builder-archlinux

# Target to build the whole thing
qubes-os-iso-r3.2: get-sources qubes-dom0 template-in-dispvm sign-all iso

about::
	@echo "qubes-os-r3.2.conf"
